Systems and methods for maximizing solar energy usage and optimizing non-renewable energy sources

ABSTRACT

A system and method for optimizing utilization of a plurality of energy sources of a power site are provided. The optimization can involve receiving a weather forecast and expected power output for a predefined time duration, and a power source for one or more time intervals to provide output power for the power site. The determination can be based on a future weather forecast and expected power output. The optimization can involve minimizing an amount of time that generator(s) are the power source and maximizing an amount of time that solar panel(s) are the power source.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.18/080,988, filed on Dec. 14, 2022, which is a continuation of U.S.patent application Ser. No. 17/859,087, filed on Jul. 7, 2022, which isnow U.S. Pat. No. 11,545,831, which claims priority from U.S.Provisional Application 63/219,654, filed on Jul. 8, 2021, all of whichare owned by the assignee of the instant application and incorporatedherein by reference in their entireties.

FIELD OF THE INVENTION

The invention relates generally to the field of energy management atpower sites (e.g., grid-connected power sites, hybrid power sites,and/or microgrids). In particular, the invention relates to maximizingsolar energy usage, and optimizing a plurality of energy sources ofpower sites, including monitoring, scheduling and managing connected andhybrid power sources.

BACKGROUND OF THE INVENTION

In developing countries, underdeveloped countries, rural and/or distantareas, electricity grids can be inconsistent and/or unreliable.Interruptions to electricity supply can also occur in developed and/ordensely populated areas. Electric supply interruptions can cause directand/or indirect operational damage to electricity and telecom providersand/or consumers. Power sites can rely on different types of energysources to backup and/or complete each other: electricity grid,rechargeable batteries, generators, solar and/or wind energy.

Diesel and fuel-based generators can typically be used on power sites tocharge batteries once they reach or dropped below a predeterminedthreshold. When sunshine is abundant around a power site, solar energycan replace the generators in charging the batteries. Simultaneousactivity of generators and/or solar panels can cause a waste of energyand increase of operational costs. Waste can also occur when batteries'charging process continues to take place when the batteries are actuallyfully charged, e.g., accelerating battery degradation, harm batteryhealth, and/or shorten battery life. Energy waste can also increasegreenhouse gas emissions such as Carbon Dioxide (CO2), which can causeadverse environmental effects. Energy waste can also result in increasedoperational expenditures for sites-operators, who may be penalized,either directly or indirectly, for exceeding various environmental,social, and governance (ESG) standards.

Currently, some systems schedule operation of energy sources at powersites, however, scheduling typically accounts neither forreal-time-conditions and circumstances, nor to future ones, which canchange the optimal power source for a power site in a given moment, thuscausing waste to occur. More specifically, current systems typically donot account for future predictions of solar energy to rely upon, or tohow much power a particular site consumes and/or how much load solarpanels can support under varying circumstances and/or conditions.Therefore, it is possible that a power site uses a generator during darktime to charge batteries up to a fixed-high level of charge (e.g.85%)—in some scenarios even to the maximum State of Charge (SOC)level—just before sunrise, or just before solar energy can push theprocess forward, and complete it, in a more cost-effective, andnon-polluting way. Thus, when the sun comes up, the battery eitherrequires no extra charging, or can be charged to a maximum level in avery short period time. This may also cause the battery to beovercharged within a very short period of time.

Therefore, it can be desirable to optimize utilization of energy sourcesof a power site.

SUMMARY OF THE INVENTION

One advantage of the invention can include saving energy in a powersite. Another advantage of the invention can include strategicscheduling that can minimize an amount of power supplied by a generatorand/or maximize an amount of power supplied by a solar power source.Another advantage of the invention can include preventing simultaneouscharging of batteries by generators and a solar power source. Anotheradvantage of the invention can include, saving battery life of batterypower sources in a power site. Another advantage of the invention caninclude, not over charging or under charging the battery. Anotheradvantage of the invention can include, maximizing use of solar energy.Another advantage of the invention can include dynamically modifying thepower source in real-time to account for current and/or futureconditions, including load, and weather.

Another advantage of the invention is the reduction of greenhouseemissions.

In one aspect, the invention involves a method for optimizingutilization of a plurality of energy sources of a power site. The methodcan involve receiving, by a computing device, a plurality of power sitespecific parameters including weather forecast, a state of charge of abattery at the power site and expected power output for a predefinedtime duration. The method can involve determining, by the computerdevice, for the predefined time duration, a first time interval where asolar panel is to provide power to the battery based on the weatherforecast, the state of charge of the battery and expected power output.The method can involve updating, by the computer device, in real-timeduring the predefined time duration, an actual energy source of theplurality of energy sources to be the solar panel provide the outputpower for the power site during the at least one-time interval based oncurrent and future weather and current and future requests for poweroutput of the power site.

In some embodiments, the method can also involve determining, by thecomputing device, for the predefined time duration, a second timeinterval, a third time interval and a fourth time interval, each havingone of a plurality of energy sources to provide output power for thepower site, the one of the plurality of energy sources is based on theweather forecast, the state of charge of the battery and the expectedpower output, wherein the second time interval is an end of daylighthours, the third time interval is nighttime, and the fourth timeinterval is a transition between nighttime and daylight and updating, bythe computer device, in real-time during the predefined time duration,an actual energy source of the plurality of energy sources to providethe output power for the power site based on current and future weatherand current and future requests for power output of the power site.

In some embodiments, determining the second time interval, the thirdtime interval and the fourth time interval is further based onmaximizing an amount of solar power output usage by the power site. Insome embodiments, the plurality of energy sources comprises a generator.In some embodiments, the determination of the third time intervalfurther comprises determining a minimal amount of for a state of chargefor the battery and setting the generator such that it provides onlyenough power to reach that minimal amount.

In some embodiments, determining the first time interval is furtherbased on minimizing an amount of time a generator is used by the powersite.

In another aspect, the invention involves a method for optimizingutilization of a plurality of energy sources of a power site. The methodcan involve receiving, by a computing device, a plurality of power sitespecific parameters including weather forecast, a state of charge of abattery at the power site and expected power output for a predefinedtime duration. The method can also involve determining, by the computingdevice, for the predefined time duration, a first time, a second timeinterval, a third time interval and a fourth time interval, each havingone of a plurality of energy sources to provide output power for thepower site, the one of the plurality of energy sources is based on theweather forecast, the state of charge of the battery and the expectedpower output, wherein the first time interval is when a solar panel isto provide power to the battery, the second time interval is an end ofdaylight hours, the third time interval is nighttime, and the fourthtime interval is a transition between nighttime and daylight, andwherein the third time interval is based on minimizing an amount of timea generator powers the battery. The method can also involve updating, bythe computer device, in real-time during the predefined time duration,an actual energy source of the plurality of energy sources to providethe output power for the power site based on current and future weatherand current and future requests for power output of the power site.

In another aspect, the invention involves a method for optimizingutilization of a plurality of energy sources of a power site. The methodcan involve receiving, by a computing device, a plurality of power sitespecific parameters including weather forecast, a state of charge of abattery at the power site and expected power output for a predefinedtime duration. The method can involve determining, by the computingdevice, for the predefined time duration, a first time, a second timeinterval, a third time interval and a fourth time interval, each havingone of a plurality of energy sources to provide output power for thepower site, the one of the plurality of energy sources is based on theweather forecast, the state of charge of the battery and the expectedpower output, wherein the first time interval is when a solar panel isto provide power to the battery, the second time interval is an end ofdaylight hours, the third time interval is nighttime, and the fourthtime interval is a transition between nighttime and daylight, andwherein one or more solar panels and one or more generators providepower to the battery different times. The method can also involveupdating, by the computer device, in real-time during the predefinedtime duration, an actual energy source of the plurality of energysources to provide the output power for the power site based on currentand future weather and current and future requests for power output ofthe power site.

In another aspect, the invention involves a method for optimizingutilization of a plurality of energy sources of a power site. The methodcan involve i) receiving, by a computing device, a plurality of powersite specific parameters including weather forecast, a state of chargeof a battery at the power site and expected power output for apredefined time duration. The method can also involve ii) determining,by the computing device, for the predefined time duration, a first time,a second time interval, a third time interval and a fourth timeinterval, each having one of a plurality of energy sources to provideoutput power for the power site, the one of the plurality of energysources is based on the weather forecast, the state of charge of thebattery and the expected power output, wherein the first time intervalis when a solar panel is to provide power to the battery, the secondtime interval is an end of daylight hours, the third time interval isnighttime, and the fourth time interval is a transition betweennighttime and daylight. The method can also involve iii) updating, bythe computer device, in real-time during the predefined time duration,an actual energy source of the plurality of energy sources to providethe output power for the power site based on current and future weatherand current and future requests for power output of the power site. Themethod can also involve repeating steps ii) and iii) for a subsequentpredefined time duration such that each time steps ii) and iii) arerepeated, the determination of step ii) is further localized to thepower site.

BRIEF DESCRIPTION OF THE DRAWINGS

Non-limiting examples of embodiments of the disclosure are describedbelow with reference to figures attached hereto that are listedfollowing this paragraph. Dimensions of features shown in the figuresare chosen for convenience and clarity of presentation and are notnecessarily shown to scale.

The subject matter regarded as the invention is particularly pointed outand distinctly claimed in the concluding portion of the specification.The invention, however, both as to organization and method of operation,together with objects, features and advantages thereof, can beunderstood by reference to the following detailed description when readwith the accompanied drawings. Embodiments of the invention areillustrated by way of example and not limitation in the figures of theaccompanying drawings, in which like reference numerals indicatecorresponding, analogous or similar elements, and in which:

FIG. 1 schematically illustrates an example of a power site for a load,according to some embodiments of the invention.

FIG. 2 shows a flow chart for a method for optimizing utilization of aplurality of energy sources of a power site, according to someembodiments of the invention.

FIG. 3 is an example of a plot showing an example of power provided to aload for a plurality of energy sources over time, according to someembodiments of the invention.

FIG. 4 shows a block diagram of a computing device which can be usedwith embodiments of the invention. It will be appreciated that forsimplicity and clarity of illustration, elements shown in the figureshave not necessarily been drawn accurately or to scale. For example, thedimensions of some of the elements can be exaggerated relative to otherelements for clarity, or several physical components can be included inone functional block or element.

DETAILED DESCRIPTION

In the following detailed description, numerous specific details are setforth in order to provide a thorough understanding of the invention.However, it will be understood by those skilled in the art that thepresent invention can be practiced without these specific details. Inother instances, well-known methods, procedures, and components,modules, units and/or circuits have not been described in detail so asnot to obscure the invention.

In general, the invention can involve optimizing utilization of aplurality of energy sources of a power site. The optimization can beperformed to provide output energy such that solar energy is maximallyused while generator energy is minimally used based on predictivefactors.

FIG. 1 schematically illustrates an example of a power site 100 for aload 110, according to some embodiments of the invention. The power sitecan be grid-connected power sites, hybrid power sites, and/ormicrogrids.

The power site 100 includes a plurality of energy sources of a solarpower source 120, a generator 125, an electric grid 130, a rechargeablebattery 135, and a processor 140. The solar power source 120, thegenerator 125, and the electric grid 130 can each be connected to (e.g.,via a wired connection) the rechargeable battery 135 and the load 110.

The processor 140 can be connected to the solar power source 120, thegenerator 125, the electric grid 130 and the battery 135.

In the example of FIG. 1 the load 110 is a cellular antenna.

In various embodiments, there can be more or less energy sources. Insome embodiments, the solar power source 120 is a solar panel.

In some embodiments, there are multiple loads. For example, there can bemultiple transmit/receive antennas.

The power site 100 can be for renewable energy, a microgrid, a fleet ofelectric vehicles, a data center, telecommunications and/or any otherfacility.

During operation, the solar power source 120, the generator 125 and theelectric grid 130 can each charge the rechargeable battery 135 and/orprovide power directly to the load 110. The processor 140 can determinewhich of the energy sources provide power to the rechargeable battery135 and/or the load 110. The processor 140 can determine an advanceschedule for the energy sources and modify the schedule dynamically inreal-time, as described in further detail below with respect to FIG. 2 .

The processor 140 can be one computing device or multiple computingdevices. The processor can be wired or wirelessly, and/or can be coupledto one or more databases and/or the internet. The processor 140 can alsobe coupled to input devices, e.g., as described in further detail belowwith respect to FIG. 4 .

FIG. 2 shows a flow chart for a method 200 for optimizing utilization ofa plurality of energy sources of a power site (e.g., energy sources andpower site as described above in FIG. 1 ), according to some embodimentsof the invention.

The method involves receiving (e.g., by the processor 140, as describedabove in FIG. 1 ) a plurality of power site specific parametersincluding weather forecast and expected power output and load for apredefined time duration (Step 210).

The predefined time duration can be input by a user. The predefined timeduration can be a 24 hour period, a 48 hour period, or a week longperiod. The predefined time duration can be any time interval.

The weather forecast (e.g., atmospheric conditions) can includetemperature, humidity, precipitation, wind speed, wind direction, airpressure, clouds, or any combination thereof.

In some embodiments, the power site specific parameters can includevisibility level.

In some embodiments, the power site specific parameters can be receivedfor past durations (e.g., prior days, parts of the day, months and/oryears) of a particular location that the power site is located. Thepower site specific parameters for past durations can be used to predictexpected current and/or future weather conditions for the power site.The power site specific parameters for past durations can be used totrain one or more machine learning models (e.g., models created via aconvolutional neural network and/or other machine learning models as areknown in the art).

The one or more machine learning models can be used to determineexpected weather conditions along with a weather forecast for the powersite. The determination can begin in a particular region based on thelocation of the power site and continue to be refined within theparticular region with power site specific data (e.g., times that thesolar is on and off), such that the determination can become more andmore accurate with respect to the location of the power site.

The weather forecast can be based on the weather history of a previoustime period. The previous time period can be dynamic such that anyduration of data that is processable by the computing device executingthe method can be received to, for example, increase accuracy.

In some embodiments, the weather forecast is based on the weatherhistory of a previous time period. The previous time period can bedefined by a user. The previous time period can be, for example, threedays.

The power site specific parameters can also include parameters relatedto the energy sources and the load. Each energy source can haveassociated parameters. For example, each energy source can have amaximum output power. A solar panel can have size of the solar panel, atime duration to charge to a maximum charge state, and time todischarge. A generator can have a size of the generator, maximum outputpower and a time to discharge. An electric grid can have a maximumoutput power and a time to discharge. A battery can have a maximum Stateof Charge (SOC) and a minimum State of Charge (SOC).

The expected power output for the predefined duration can be based onhistorical data. The historical data can be input by a user, collectedover time by the system or any combination thereof.

The historical data can be power consumed by the load for past durations(e.g., prior days, months and/or years) of the power site. The expectedoutput power can be based on models trained via machine learning models(e.g., models trained via a neural network).

The expected output power can continually be updated. For example, theexpected output power can be updated every 5 minutes, such that a twentyfour hour period is broken into 288 slots. In various embodiments, theoutput power is updated at other time intervals. In some embodiments,the historical data can be limited to a predefined look back period(e.g., 1 week, 4 months, 1 year, 3 years, 5 years). In some embodiments,limiting the predefined look back period can allow a more accurateexpected output power for power sites that have had a significant changein the past year in usage. For example, for a power site in sparselypopulated area that in the past year has become densely populated, itcan be beneficial to limit the lookback period to a time period of powersite usage where the densely populated condition has occurred, so thatthe sparsely populated condition output power consumption in the pasthas little influence over a models expected power output prediction.

In some embodiments, the load is multiple devices. For example, serversin a data center or vehicles in a fleet of electric vehicles. In theseembodiments, the expected output power is determined to provide power toeach of the multiple devices.

The method can also involve determining, by the computer device, for thepredefined time duration, one or more time intervals each having one ofthe plurality of energy sources to provide output power for the powersite, wherein the one of the plurality of energy sources is based on theweather forecast and expected power output (Step 220).

The particular energy source of the plurality of energy sources selectedfor a particular time interval can be determined to maximize an amountof solar power that is output by the power site. Maximizing the amountof solar power that is output by the power site seeks to minimize anamount of generator power and/or electric grid power that is output,thus minimizing the amount of non-renewable, non-green energy the powersite supplies to the load. Supplying renewable and green energy to theload can reduce overall cost of supply power, minimize impact to theenvironment, and/or extend lifetime of other non-renewable energysources.

The plurality of energy sources can include one or more solar panels,batteries, generators and/or electric grids.

In some embodiments, the particular energy source of the plurality ofenergy sources selected for a particular time interval is based on anorder of preference for energy sources to power the load. The order ofpreference can be based on ensuring the solar panel is used a maximumamount of time while the generator and/or battery are used a minimumamount of time. The order of preference can be first: solar panel first,second: battery, third: generator.

In some embodiments, the solar panel and the generator charge thebattery, and the battery powers the load. In these embodiments, an orderof preference between the solar panel and the generator can bedetermined. In these embodiments, the order of preference between thesolar panel and the generator can be based on ensuring the solar panelis used a maximum amount of time while the generator and/or battery isused a minimum amount of time. The solar panel can charge the batteryduring a time duration when the sun is present and the generator (orelectric grid or other non-solar energy source) can charge the batteryduring durations when the sun is not present.

The generator and the solar panel (e.g., and/or other non-renewableenergy sources) can be scheduled based on the predicted weather forecastand expected output power (e.g., the expected power consumption of theload). The generators can be the Perkins 400 Series.

Other generator manufacturers could be Lister Petter, FG Wilson,Olympian, and/or others.

In some embodiments, the plurality of energy sources are scheduledduring the time interval based on a SOC of the battery. For example, thesolar panel can be scheduled to provide power to the battery based on acapacity of the battery. For a larger battery, it can take a longerduration to charge the battery, and for a smaller battery it can take ashorter duration to charge the battery.

In some embodiments, the solar panel is scheduled based on a 24 hourperiod, predicted sun duration, and battery capacity.

Four durations can be determined, a first duration of invalid, a secondduration of pre-target, a third duration of post-target, and fourthduration of target.

The invalid duration is a time period where the solar panel is to powerthe battery and thus power the power site (e.g., a time period for whichthe generator is deemed invalid to use). This is the time period whereit is sunny. In some embodiments, the solar panel can turn on and offduring the invalid duration based on the SOC of the battery. Forexample, if the SOC of the battery is such that the battery is chargedin less time than the invalid duration, the solar panel can fully chargethe battery and then wait until the battery is discharged beforecharging the battery again. For example, assume an invalid duration thatstarts at 8 am, when a SOC of the battery is 60%, if a sun level is highand amount of consumption is low, this can result in a higher state ofbattery charge, for example, 80% at 10 am. In this example, the solarpanel can be shut down until some of the charge is used. As is apparentto one of ordinary skill in the art, this is presented for examplepurposes only and that for varying invalid durations, SOC of thebattery, and loads the outcomes can be different.

Once the second duration of pre-target is reached, e.g., at the end ofdaylight, the solar panel can shut down, and the battery can providepower to the load without being recharged by the solar panel.

Once the third duration of target duration is reached, e.g., during thenight, there is no sun for the solar panel to convert into energy, andthus generator (e.g., and/or an alternative energy source) can rechargethe battery. The amount of charge for the generator to provide thebattery can be based on determining the minimal amount required for thebattery's SOC at the beginning of the post-target duration to, forexample, put the battery in an optimal charge state for the start of thepost-target duration. The SOC percentage can change in order to, forexample, 1) minimize generator use, 2) make the best out of future solarpower, and/or 3) prevent overcharging and keep the battery in goodhealth.

Once the fourth duration of post-target is reached, e.g., the transitionfrom night to day, the generator (e.g., and/or alternative energysource) can continue to recharge the battery for a duration until solarcan take over. A determination as to how much charge to provide to thebattery until the solar panel can start to recharge the battery (e.g.,the invalid period restarted) can be made. The determination canminimize the amount of charge the generator provides to the battery.This is typically a time duration when the sun has started coming up butnot yet in a position to provide a strong enough charge. An amount ofcharge to provide to the battery until the solar panel can start torecharge the battery can be based on preventing the generator fromovercharging the battery in view of the upcoming invalid period.

As described above, the first, second, third and fourth duration can bescheduled based on the weather forecast, prior weather, current andexpected power demand, battery SOC, and/or any combination thereof.

In some embodiments, for durations that the generator is running asimulation is performed every minute that determines for a set ofpredefined durations if the generator is used to charge the battery, howlong the battery can last to power the load. For example, a set ofpredefined durations can be 5, 10, 15, and 20 minutes. The simulationcan be run to determine if the generator is turned on to power thebattery for 5, 10, 15 and 20 minutes, how long the battery can last topower the load. In this manner an optimal time duration to run thegenerator for a duration that provides enough power to the load andavoids wasting generator resource can be determined.

In some embodiments, the simulation performed for the generator isperformed for other energy sources (e.g., the electric grid).

In some scenarios, actual weather and/or actual power demand variesduring operation from the weather forecast and/or expected power demand,respectively. Therefore, it can be desirable to modify whether solarpower, generator and/or other energy sources are used to power thebattery and/or provide power to the load in real-time.

The method can also involve updating, by the computer device, inreal-time during the predefined time duration, an actual energy sourceof the plurality of energy sources to provide the output power for thepower site based on current weather and current requests for poweroutput of the power site (Step 230).

For example, if the weather forecast predicted sun, and clouds preventthe sun from allowing the solar panels to charge the battery, if for thecurrent predetermined duration the energy source was a solar panel, theactual energy source can be switched to be the generator.

In some embodiments, during each time interval, the current weather,current power demand from the load, and current battery capacity can beassessed on a periodic basis to update the energy source selected for aparticular time interval in real-time.

FIG. 3 is an example of a plot showing an example of power provided to abattery for a plurality of energy sources over time, according to someembodiments of the invention. As the power provided by a plurality ofenergy sources as shown in FIG. 3 can be determined by the method asdescribed above. In this example, the SOC of a battery can be seen inline 310. In this example, the maximum SOC is set to −90% and theminimum SOC is set to −20%.

The solar power is on according to the waveform 330 as shown. Thegenerator is on at each interval as shown by a shaded block, forexample, blocks 315 a, 315 b, and 315 c. For example, at block 315 a,the generator 320 is shown as charging the battery from 9:00 pm-11:00pm, at block 315 b the generator 320 is shown as charging the batteryfrom 8:00 am-9:10 am. As can be seen in this example, the generator 320is typically not on at the same time that the solar power waveform 330is increasing and/or high. This can be to ensure that the generator 320is used as little as possible, for example, when the SOC reaches and/oris approaching its minimum threshold and solar power waveform 330 (e.g.,available solar power) is decreasing, insufficient and/or not available.Each time the solar power waveform 330 decreases to the minimal SOC thatis set to −20, the generator 320 is shown as being on. Each time thesolar power waveform 330 increases the SOC 310 of the battery increases,each time the solar power waveform 330 decreases, the SOC 310 of thebattery decreases. Each time the generator 320 is on, the SOC 310 of thebattery rises. In other locations, the SOC of the battery rises due tosolar power being on. For example, at increase, the generator 320 is noton, but the state of charge of the battery is still rising, thus solarenergy, and not the generator is charging the battery.

FIG. 4 shows a block diagram of a computing device 400 which can be usedwith embodiments of the invention. Computing device 400 can include acontroller or processor 405 that can be or include, for example, one ormore central processing unit processor(s) (CPU), one or more GraphicsProcessing Unit(s) (GPU or GPGPU), a chip or any suitable computing orcomputational device, an operating system 415, a memory 420, a storage430, input devices 435 and output devices 440.

Operating system 415 can be or can include any code segment designedand/or configured to perform tasks involving coordination, scheduling,arbitration, supervising, controlling or otherwise managing operation ofcomputing device 400, for example, scheduling execution of programs.Memory 420 can be or can include, for example, a Random Access Memory(RAM), a read only memory (ROM), a Dynamic RAM (DRAM), a SynchronousDRAM (SD-RAM), a double data rate (DDR) memory chip, a Flash memory, avolatile memory, a non-volatile memory, a cache memory, a buffer, ashort term memory unit, a long term memory unit, or other suitablememory units or storage units. Memory 420 can be or can include aplurality of possibly different memory units. Memory 420 can store forexample, instructions to carry out a method (e.g., code 425), and/ordata such as user responses, interruptions, etc. At least a portion ofMemory 420 can be housed on the cloud.

Executable code 425 can be any executable code, e.g., an application, aprogram, a process, task or script. Executable code 425 can be executedby controller 405 possibly under control of operating system 415. Forexample, executable code 425 can when executed cause masking ofpersonally identifiable information (PII), according to embodiments ofthe invention. In some embodiments, more than one computing device 400or components of device 400 can be used for multiple functions describedherein. For the various modules and functions described herein, one ormore computing devices 400 or components of computing device 400 can beused. Devices that include components similar or different to thoseincluded in computing device 400 can be used and can be connected to anetwork and used as a system. One or more controllers (e.g.,processor(s)) 405 can be configured to carry out embodiments of theinvention by for example executing software or code. Storage 430 can beor can include, for example, a hard disk drive, a floppy disk drive, aCompact Disk (CD) drive, a CD-Recordable (CD-R) drive, a universalserial bus (USB) device or other suitable removable and/or fixed storageunit. Data such as instructions, code, NN model data, parameters, etc.can be stored in a storage 430 and can be loaded from storage 430 into amemory 420 where it can be processed by controller 405. In someembodiments, some of the components shown in FIG. 4 can be omitted.Storage 430 may include cloud storage. Storage 430 may include storingin a database.

Input devices 435 can be or can include for example a mouse, a keyboard,a touch screen or pad or any suitable input device. It will berecognized that any suitable number of input devices can be operativelyconnected to computing device 400 as shown by block 435. Output devices440 can include one or more displays, speakers and/or any other suitableoutput devices. It will be recognized that any suitable number of outputdevices can be operatively connected to computing device 400 as shown byblock 440. Any applicable input/output (I/O) devices can be connected tocomputing device 400, for example, a wired or wireless network interfacecard (NIC), a modem, printer or facsimile machine, a universal serialbus (USB) device or external hard drive can be included in input devices435 and/or output devices 440.

Embodiments of the invention can include one or more article(s) (e.g.,memory 420 or storage 430) such as a computer or processornon-transitory readable medium, or a computer or processornon-transitory storage medium, such as for example a memory, a diskdrive, or a USB flash memory, encoding, including or storinginstructions, e.g., computer-executable instructions, which, whenexecuted by a processor or controller, carry out methods disclosedherein.

One skilled in the art will realize the invention can be embodied inother specific forms without departing from the spirit or essentialcharacteristics thereof. The foregoing embodiments are therefore to beconsidered in all respects illustrative rather than limiting of theinvention described herein. Scope of the invention is thus indicated bythe appended claims, rather than by the foregoing description, and allchanges that come within the meaning and range of equivalency of theclaims are therefore intended to be embraced therein.

In the foregoing detailed description, numerous specific details are setforth in order to provide an understanding of the invention. However, itwill be understood by those skilled in the art that the invention can bepracticed without these specific details. In other instances, well-knownmethods, procedures, and components, modules, units and/or circuits havenot been described in detail so as not to obscure the invention. Somefeatures or elements described with respect to one embodiment can becombined with features or elements described with respect to otherembodiments.

Although embodiments of the invention are not limited in this regard,discussions utilizing terms such as, for example, “processing,”“computing,” “calculating,” “determining,” “establishing”, “analyzing”,“checking”, or the like, can refer to operation(s) and/or process(es) ofa computer, a computing platform, a computing system, or otherelectronic computing device, that manipulates and/or transforms datarepresented as physical (e.g., electronic) quantities within thecomputer's registers and/or memories into other data similarlyrepresented as physical quantities within the computer's registersand/or memories or other information non-transitory storage medium thatcan store instructions to perform operations and/or processes.

Although embodiments of the invention are not limited in this regard,the terms “plurality” and “a plurality” as used herein can include, forexample, “multiple” or “two or more”. The terms “plurality” or “aplurality” can be used throughout the specification to describe two ormore components, devices, elements, units, parameters, or the like. Theterm set when used herein can include one or more items. Unlessexplicitly stated, the method embodiments described herein are notconstrained to a particular order or sequence. Additionally, some of thedescribed method embodiments or elements thereof can occur or beperformed simultaneously, at the same point in time, or concurrently.

A computer program can be written in any form of programming language,including compiled and/or interpreted languages, and the computerprogram can be deployed in any form, including as a stand-alone programor as a subroutine, element, and/or other unit suitable for use in acomputing environment. A computer program can be deployed to be executedon one computer or on multiple computers at one site.

Method steps can be performed by one or more programmable processorsexecuting a computer program to perform functions of the invention byoperating on input data and generating output. Method steps can also beperformed by an apparatus and can be implemented as special purposelogic circuitry. The circuitry can, for example, be a FPGA (fieldprogrammable gate array) and/or an ASIC (application-specific integratedcircuit). Modules, subroutines, and software agents can refer toportions of the computer program, the processor, the special circuitry,software, and/or hardware that implement that functionality.

Processors suitable for the execution of a computer program include, byway of example, both general and special purpose microprocessors, andany one or more processors of any kind of digital computer. Generally, aprocessor receives instructions and data from a read-only memory or arandom-access memory or both. The essential elements of a computer are aprocessor for executing instructions and one or more memory devices forstoring instructions and data. Generally, a computer can be operativelycoupled to receive data from and/or transfer data to one or more massstorage devices for storing data (e.g., magnetic, magneto-optical disks,or optical disks).

Data transmission and instructions can also occur over a communicationsnetwork.

Information carriers suitable for embodying computer programinstructions and data include all forms of non-volatile memory,including by way of example semiconductor memory devices. Theinformation carriers can, for example, be EPROM, EEPROM, flash memorydevices, magnetic disks, internal hard disks, removable disks,magneto-optical disks, CD-ROM, and/or DVD-ROM disks. The processor andthe memory can be supplemented by, and/or incorporated in specialpurpose logic circuitry. In some embodiments, at least a portion of thememory is housed online on the cloud.

To provide for interaction with a user, the above-described techniquescan be implemented on a computer having a display device, a transmittingdevice, and/or a computing device. The display device can be, forexample, a cathode ray tube (CRT) and/or a liquid crystal display (LCD)monitor. The interaction with a user can be, for example, a display ofinformation to the user and a keyboard and a pointing device (e.g., amouse or a trackball) by which the user can provide input to thecomputer (e.g., interact with a user interface element). Other kinds ofdevices can be used to provide for interaction with a user. Otherdevices can be, for example, feedback provided to the user in any formof sensory feedback (e.g., visual feedback, auditory feedback, ortactile feedback). Input from the user can be, for example, received inany form, including acoustic, speech, and/or tactile input.

The computing device can include, for example, a computer, a computerwith a browser device, a telephone, an IP phone, a mobile device (e.g.,cellular phone, personal digital assistant (PDA) device, laptopcomputer, electronic mail device), and/or other communication devices.The computing device can be, for example, one or more computer servers.The computer servers can be, for example, part of a server farm. Thebrowser device includes, for example, a computer (e.g., desktopcomputer, laptop computer, and tablet) with a World Wide Web browser(e.g., Microsoft® Internet Explorer® available from MicrosoftCorporation, Chrome available from Google, Mozilla® Firefox availablefrom Mozilla Corporation, Safari available from Apple). The mobilecomputing device includes, for example, a personal digital assistant(PDA).

Website and/or web pages can be provided, for example, through a network(e.g., Internet) using a web server. The web server can be, for example,a computer with a server module (e.g., Microsoft® Internet InformationServices available from Microsoft Corporation, Apache Web Serveravailable from Apache Software Foundation, Apache Tomcat Web Serveravailable from Apache Software Foundation).

The storage module can be, for example, a random-access memory (RAM)module, a read only memory (ROM) module, a computer hard drive, a memorycard (e.g., universal serial bus (USB) flash drive, a secure digital(SD) flash card), a floppy disk, and/or any other data storage device.Information stored on a storage module can be maintained, for example,in a database (e.g., relational database system, flat database system)and/or any other logical information storage mechanism.

The above-described techniques can be implemented in a distributedcomputing system that includes a back-end component. The back-endcomponent can, for example, be a data server, a middleware component,and/or an application server. The above-described techniques can beimplemented in a distributing computing system that includes a front-endcomponent. The front-end component can, for example, be a clientcomputer having a graphical user interface, a Web browser through whicha user can interact with an example implementation, and/or othergraphical user interfaces for a transmitting device. The components ofthe system can be interconnected by any form or medium of digital datacommunication (e.g., a communication network). Examples of communicationnetworks include a local area network (LAN), a wide area network (WAN),the Internet, wired networks, and/or wireless networks.

The system can include clients and servers. A client and a server aregenerally remote from each other and typically interact through acommunication network. The relationship of client and server arises byvirtue of computer programs running on the respective computers andhaving a client-server relationship to each other.

The above-described networks can be implemented in a packet-basednetwork, a circuit-based network, and/or a combination of a packet-basednetwork and a circuit-based network. Packet-based networks can include,for example, the Internet, a carrier internet protocol (IP) network(e.g., local area network (LAN), wide area network (WAN), campus areanetwork (CAN), metropolitan area network (MAN), home area network (HAN),a private IP network, an IP private branch exchange (IPBX), a wirelessnetwork (e.g., radio access network (RAN), 802.11 network, 802.16network, general packet radio service (GPRS) network, HiperLAN), and/orother packet-based networks. Circuit-based networks can include, forexample, the public switched telephone network (PSTN), a private branchexchange (PBX), a wireless network (e.g., RAN, Bluetooth®, code-divisionmultiple access (CDMA) network, time division multiple access (TDMA)network, global system for mobile communications (GSM) network), and/orother circuit-based networks.

Some embodiments of the present invention may be embodied in the form ofa system, a method or a computer program product. Similarly, someembodiments may be embodied as hardware, software or a combination ofboth. Some embodiments may be embodied as a computer program productsaved on one or more non-transitory computer readable medium (or media)in the form of computer readable program code embodied thereon. Suchnon-transitory computer readable medium may include instructions thatwhen executed cause a processor to execute method steps in accordancewith embodiments. In some embodiments, the instructions stored on thecomputer readable medium may be in the form of an installed applicationand in the form of an installation package.

Such instructions may be, for example, loaded by one or more processorsand get executed. For example, the computer readable medium may be anon-transitory computer readable storage medium. A non-transitorycomputer readable storage medium may be, for example, an electronic,optical, magnetic, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any combination thereof.

Computer program code may be written in any suitable programminglanguage. The program code may execute on a single computer system, oron a plurality of computer systems.

One skilled in the art will realize the invention may be embodied inother specific forms without departing from the spirit or essentialcharacteristics thereof. The foregoing embodiments are therefore to beconsidered in all respects illustrative rather than limiting of theinvention described herein. Scope of the invention is thus indicated bythe appended claims, rather than by the foregoing description, and allchanges that come within the meaning and range of equivalency of theclaims are therefore intended to be embraced therein.

In the foregoing detailed description, numerous specific details are setforth in order to provide an understanding of the invention. However, itwill be understood by those skilled in the art that the invention can bepracticed without these specific details. In other instances, well-knownmethods, procedures, and components, modules, units and/or circuits havenot been described in detail so as not to obscure the invention. Somefeatures or elements described with respect to one embodiment can becombined with features or elements described with respect to otherembodiments.

What is claimed is:
 1. A method for optimizing utilization of aplurality of energy sources of a power site, the method comprising:receiving, by a computing device, a plurality of power site specificparameters including weather forecast, a state of charge of a battery atthe power site and expected power output for a predefined time duration;determining, by the computing device, for the predefined time duration,a first time, a second time interval, a third time interval and a fourthtime interval, each having one of a plurality of energy sources toprovide output power for the power site, the one of the plurality ofenergy sources is based on the weather forecast, the state of charge ofthe battery and the expected power output, wherein the first timeinterval is when a solar panel is to provide power to the battery, thesecond time interval is an end of daylight hours, the third timeinterval is nighttime, and the fourth time interval is a transitionbetween nighttime and daylight, and wherein one or more solar panels andone or more generators provide power to the battery at different times;and updating, by the computer device, in real-time during the predefinedtime duration, an actual energy source of the plurality of energysources to provide the output power for the power site based on currentand future weather and current and future requests for power output ofthe power site.
 2. The method of claim 1 wherein determining the secondtime interval, the third time interval and the fourth time interval isfurther based on maximizing an amount of solar power output usage by thepower site.
 3. The method of claim 1, wherein the plurality of energysources comprises a generator.
 4. The method of claim 1, wherein thedetermining of the third time interval further comprises determining aminimal amount of for a state of charge for the battery and setting thegenerator such that it provides only enough power to reach that minimalamount.
 5. The method of claim 1, wherein the determining of the firsttime interval is further based on minimizing an amount of time agenerator is used by the power site.
 6. A system for optimizingutilization of a plurality of energy sources of a power site, the systemcomprising: a processor configured to: receive a plurality of power sitespecific parameters including weather forecast, a state of charge of abattery at the power site and expected power output for a predefinedtime duration; determine for the predefined time duration, a first time,a second time interval, a third time interval and a fourth timeinterval, each having one of a plurality of energy sources to provideoutput power for the power site, the one of the plurality of energysources is based on the weather forecast, the state of charge of thebattery and the expected power output, wherein the first time intervalis when a solar panel is to provide power to the battery, the secondtime interval is an end of daylight hours, the third time interval isnighttime, and the fourth time interval is a transition betweennighttime and daylight, and wherein one or more solar panels and one ormore generators provide power to the battery at different times; andupdate in real-time during the predefined time duration, an actualenergy source of the plurality of energy sources to provide the outputpower for the power site based on current and future weather and currentand future requests for power output of the power site.
 7. The system ofclaim 6, wherein the plurality of energy sources comprises a generator.8. The system of claim 6, wherein the determining of the third timeinterval further comprises determining a minimal amount of for a stateof charge for the battery and setting the generator such that itprovides only enough power to reach that minimal amount.
 9. The systemof claim 6, wherein the determining of the first time interval isfurther based on minimizing an amount of time a generator is used by thepower site.
 10. A non-transitory computer program product comprisinginstruction which, when the program is executed cause the computer to:receive a plurality of power site specific parameters including weatherforecast, a state of charge of a battery at the power site and expectedpower output for a predefined time duration; determine for thepredefined time duration, a first time, a second time interval, a thirdtime interval and a fourth time interval, each having one of a pluralityof energy sources to provide output power for the power site, the one ofthe plurality of energy sources is based on the weather forecast, thestate of charge of the battery and the expected power output, whereinthe first time interval is when a solar panel is to provide power to thebattery, the second time interval is an end of daylight hours, the thirdtime interval is nighttime, and the fourth time interval is a transitionbetween nighttime and daylight, and wherein one or more solar panels andone or more generators provide power to the battery at different times;and update in real-time during the predefined time duration, an actualenergy source of the plurality of energy sources to provide the outputpower for the power site based on current and future weather and currentand future requests for power output of the power site.
 11. Thenon-transitory computer program product of claim 10, wherein theplurality of energy sources comprises a generator.
 12. Thenon-transitory computer program product of claim 10, wherein thedetermining of the third time interval further comprises determining aminimal amount of for a state of charge for the battery and setting thegenerator such that it provides only enough power to reach that minimalamount.
 13. The non-transitory computer program product of claim 10,wherein the determining of the first time interval is further based onminimizing an amount of time a generator is used by the power site.